Back-to-Back Testing
Back-to-back tests can compare the behavior of a system in different stages of the development by comparing a set of relevant signals with a prerecorded reference or with different platforms.
Features used to perform back-to-back testing
-
Back-to-back set up in the Execution Configuration dialog
Use this feature, for example, when comparing test results obtained with two different platforms. For more information about this test feature, see Back-to-Back in the Execution Configuration Dialog.
There is an example available showing how to configure platforms for a back-to-back test. Open the example Help|Examples|06 Test Methods|01 Back-to-Back-Testing.
-
Back-to-back set up in the Signal Comparison assesslet
Use this feature, for example, when comparing current test run data as reference signal source. For more information about this test feature, see Assesslet Types - Signal Comparison.
Differences between these back-to-back test features:
Back-to-back test feature of the Signal Comparison assesslet |
Back-to-back test feature of the Execution Configuration dialog |
---|---|
created manually and configured in |
configured in the Execution Configuration dialog; the Back-to-Back assesslet in the Assesslets view is automatically generated |
one back-to-back test can be configured |
several back-to-back tests can be configured in the Advanced mode in the Execution Configuration dialog |
multiple assesslets that can be active or inactive per test case |
one assesslet is active for all test cases |
supports also current test run data |
does not support current test run data as reference signal source |
signals must be added manually |
signals that are added automatically from the following groups:
|
Functions used to perform back-to-back testing
-
Back-to-back test assessment function
hose()
used in Script AssessletsThis function generates bounds around the time dependent expression
ref(t)
and checks if the expressionexpr(t)
is encapsulated within these bounds. For more information, see hose in Assessment Functions.
NaN handling in back-to-back testing
When using NaN in back-to-back testing the following applies:
NaN == NaN // results in true; deviates from the traditional NaN handling; differs from the Python logic
If all of the involved signal values are NaN, the calculated difference/deviation is 0.0
. If some but not all of the involved values are NaN, the calculated difference/deviation is a constant:
DEVIATION_TO_NAN == Float.MAX_VALUE
Assuming there are the two signals during TPT.Interval(0,20): NaN_signal := 1 ref_signal := 1 // results in 0 because the deviation is 0 during TPT.Interval(20,40): NaN_signal:= NaN_doub ref_signal:= 1 // results in DEVIATION_TO_NAN == Float.MAX_VALUE == 3.4E+38; during TPT.Interval(40,60): NaN_signal:= NaN_doub ref_signal:= NaN_doub // results in 0 because the deviation is 0 where |